#ifndef __ES_HBRIDGE_H__
#define __ES_HBRIDGE_H__

#include "stm_std_lib.h"

class es_Pwm30;		//pwm30前向声明,在.cpp中include


/*
标准2输入H桥驱动程序
*/
class es_HBridge {

public:
	es_HBridge();
	~es_HBridge();


	//初始化
	/*
	ch_in1 对应H桥的in1引脚的pwm通道号(参考es_pwm30.h的pin定义)
	ch_in2 对应H桥的in2引脚的pwm通道号(参考es_pwm30.h的pin定义)
	*/
	void init(u8 ch_in1, u8 ch_in2);


	//正转输出,speed 0-32000，对应占空比0-100%
	void forward(u16 speed);

	//反转输出,speed 0-32000，对应占空比0-100%
	void backward(u16 speed);

	//空档
	void neutral();

	//刹车（注意有些H桥不允许刹车（会短路），使用前必需先查文档）
	void breaks();


private:
	//对应H桥in1,in2 pin
	es_Pwm30* m_pwm;

	u8 m_in1;
	u8 m_in2;

};






#endif
